﻿<!DOCTYPE HTML>
<html lang="zh">
<head>
<title>Control 函数列表 | AutoHotkey v2</title>
<meta name="description" content="This page lists functions to retrieve information about a control, or make a variety of changes to a control." />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
<script type="text/javascript">$(function(){0<=window.navigator.userAgent.toLowerCase().indexOf("ucbrowser")&&CaoNiMaDeUc()})</script>
</head>
<body>

<h1>控件函数</h1>

<p>函数检索有关控件的信息, 或对控件进行各种更改. 单击函数名查看详细信息.</p>
<table class="info">
  <tr>
    <th>函数</th>
    <th>描述</th>
  </tr>
  <tr>
    <td><a href="ControlAddItem.htm">添加控件项</a></td>
    <td>添加指定的字符串作为 ListBox(列表框) 或 ComboBox(组合框) 底部的新条目.</td>
  </tr>
  <tr>
    <td><a href="ControlChooseIndex.htm">选择控件项</a></td>
    <td>设置列表框, 组合框或标签页控件中的选择为指定的条目或选项卡编号.</td>
  </tr>
  <tr>
    <td><a href="ControlChooseString.htm">选择控件文本</a></td>
    <td>将 ListBox 或 ComboBox 中的选择设置为其开头部分与指定字符串匹配的第一个条目.</td>
  </tr>
  <tr>
    <td><a href="ControlClick.htm">点击控件</a></td>
    <td>发送鼠标按钮或鼠标滚轮事件到控件.</td>
  </tr>
  <tr>
    <td><a href="ControlDeleteItem.htm">删除控件项</a></td>
    <td>从 ListBox 或 ComboBox 中删除指定的条目.</td>
  </tr>
  <tr>
    <td><a href="ControlFindItem.htm">查找控件项</a></td>
    <td>返回与指定字符串完全匹配的 ListBox 或 ComboBox 的条目的编号.</td>
  </tr>
  <tr>
    <td><a href="ControlFocus.htm">设置焦点</a></td>
    <td>设置输入焦点到窗口的指定控件上.</td>
  </tr>
  <tr>
    <td><a href="ControlGetChecked.htm">获取控件选中状态</a></td>
    <td>如果选中复选框或单选按钮, 则返回非零值.</td>
  </tr>
  <tr>
    <td><a href="ControlGetChoice.htm">获取选中控件</a></td>
    <td>返回列表框或组合框中当前选定项的名称.</td>
  </tr>
  <tr>
    <td><a href="ControlGetClassNN.htm">获取控件类名编号</a></td>
    <td>返回指定控件的 ClassNN(类名和序号).</td>
  </tr>
  <tr>
    <td><a href="ControlGetEnabled.htm">获取控件可用状态</a></td>
    <td>如果指定的控件是启用的, 则返回非零值.</td>
  </tr>
  <tr>
    <td><a href="ControlGetFocus.htm">获取焦点控件</a></td>
    <td>如果有, 则获取目标窗口中具有输入焦点的控件.</td>
  </tr>
  <tr>
    <td><a href="ControlGetHwnd.htm">获取控件句柄</a></td>
    <td>返回指定控件的唯一 ID.</td>
  </tr>
  <tr>
    <td><a href="ControlGetIndex.htm">获取控件索引</a></td>
    <td>返回 ListBox, ComboBox 或 Tab 控件中当前选中的条目或标签的索引.</td>
  </tr>
  <tr>
    <td><a href="ControlGetItems.htm">获取控件组</a></td>
    <td>返回 ListBox, ComboBox 或 DropDownList 中的项目/行数组.</td>
  </tr>
  <tr>
    <td><a href="ControlGetPos.htm">获取控件位置</a></td>
    <td>获取控件的位置和大小.</td>
  </tr>
  <tr>
    <td><a href="ControlGetStyle.htm">获取控件样式<br>获取控件扩展样式</a></td>
    <td>返回表示指定控件样式或扩展样式的整数.</td>
  </tr>
  <tr>
  <tr>
    <td><a href="ControlGetText.htm">获取控件文本</a></td>
    <td>从控件检索文本.</td>
  </tr>
  <tr>
    <td><a href="ControlGetVisible.htm">获取控件可见状态</a></td>
    <td>如果指定的控件可见, 则返回非零值.</td>
  </tr>
  <tr>
    <td><a href="ControlHide.htm">隐藏控件</a></td>
    <td>隐藏指定控件.</td>
  </tr>
  <tr>
    <td><a href="ControlHideDropDown.htm">隐藏下拉列表</a></td>
    <td>隐藏 ComboBox 控件的下拉列表.</td>
  </tr>
  <tr>
    <td><a href="ControlMove.htm">移动控件</a></td>
    <td>移动或调整控件.</td>
  </tr>
  <tr>
    <td><a href="ControlSend.htm">发送操作到控件<br>发送文本到控件</a></td>
    <td>向窗口或控件发送模拟的击键或文本.</td>
  </tr>
  <tr>
    <td><a href="ControlSetChecked.htm">设置单选框</a></td>
    <td>打开(选中) 或关闭(取消选中) 复选框或单选按钮.</td>
  </tr>
  <tr>
    <td><a href="ControlSetEnabled.htm">设置控件可用</a></td>
    <td>启用或禁用指定的控件.</td>
  </tr>
  <tr>
    <td><a href="ControlSetStyle.htm">设置控件样式<br>设置控件扩展样式</a></td>
    <td>分别更改指定控件的样式或扩展样式.</td>
  </tr>
  <tr>
    <td><a href="ControlSetText.htm">设置控件文本</a></td>
    <td>更改控件的文本.</td>
  </tr>
  <tr>
    <td><a href="ControlShow.htm">显示控件</a></td>
    <td>如果指定的控件先前是隐藏的, 则显示该控件.</td>
  </tr>
  <tr>
    <td><a href="ControlShowDropDown.htm">显示下拉列表</a></td>
    <td>显示 ComboBox 控件的下拉列表.</td>
  </tr>
  <tr>
    <td><a href="EditGetCurrentCol.htm">获取编辑框当前列</a></td>
    <td>返回编辑控件中插入点所在的列号.</td>
  </tr>
  <tr>
    <td><a href="EditGetCurrentLine.htm">获取编辑框当前行</a></td>
    <td>返回编辑控件中插入点所在的行号.</td>
  </tr>
  <tr>
    <td><a href="EditGetLine.htm">获取编辑框行内容</a></td>
    <td>返回 Edit 控件中指定行的文本.</td>
  </tr>
  <tr>
    <td><a href="EditGetLineCount.htm">获取编辑框行数</a></td>
    <td>返回 Edit 控件的行数.</td>
  </tr>
  <tr>
    <td><a href="EditGetSelectedText.htm">获取编辑框选中文本</a></td>
    <td>返回 Edit 控件中选定的文本.</td>
  </tr>
  <tr>
    <td><a href="EditPaste.htm">粘贴到编辑框</a></td>
    <td>将指定的字符串粘贴到 Edit 控件中的插入符号(文本插入点) 处.</td>
  </tr>
  <tr>
    <td><a href="ListViewGetContent.htm">获取项目列表</a></td>
    <td>返回列表视图中的项目/行列表.</td>
  </tr>
</table>

<h2 id="Parameter"><em>Control</em> 参数</h2>
<p>操作单个控件的函数有一个名为 <em>Control</em> 的参数, 该参数支持几种不同的方法来识别控件. <em>Control</em> 参数可以是以下参数之一:</p>
<p><strong>ClassNN</strong>(<a href="../Concepts.htm#strings">字符串</a>): 控件的 ClassNN(类名和实例号), 可以通过 Window Spy 来确定. 例如 "Edit1" 是类名为 "Edit" 的第一个控件.</p>
<p><strong>Text</strong>(<a href="../Concepts.htm#strings">字符串</a>): 控件的文本. 匹配行为由 <a href="SetTitleMatchMode.htm">设置标题匹配模式</a> 决定.</p>
<p><strong>HWND</strong>(<a href="../Concepts.htm#numbers">整数</a>): 控件的 HWND, 通常通过 <a href="ControlGetHwnd.htm">获取控件句柄</a>, <a href="MouseGetPos.htm">获取鼠标位置</a> 或 <a href="DllCall.htm">动态库调用</a> 检索. 这也适用于隐藏控件, 即使 <a href="DetectHiddenWindows.htm">检测隐藏窗口</a> 关闭. 任何后续的窗口参数都被忽略.</p>
<p><strong>对象</strong>: 具有 <code>Hwnd</code> 属性的任何类型的对象, 如 <a href="../objects/GuiControl.htm">界面控件</a>. 如果对象没有 <code>Hwnd</code> 属性或不返回纯整数, 则抛出异常. 任何后续的窗口参数都将被忽略.</p>
<p><strong>省略</strong>: 一些函数可以操作控件或顶级窗口. 省略 <em>Control</em> 参数会导致函数使用目标窗口(由 <em><a href="../misc/WinTitle.htm">WinTitle</a></em> 指定) 而不是它的一个控件. 例如, <a href="ControlSend.htm">发送操作到控件</a> 可以直接发送键盘消息到窗口.</p>

<h2 id="Error_Handling">错误处理</h2>
<p>在以下情况下会抛出异常:</p>
<ul>
  <li>找不到目标窗口或控件.</li>
  <li>在执行该函数的目的时出现了问题, 例如检索设置或应用更改.</li>
  <li>检测到无效参数.</li>
</ul>

<h2 id="Remarks">备注</h2>
<p>为了提高可靠性, 在每次使用更改控件的控件函数(除了 <a href="ControlSetStyle.htm">设置控件样式</a> 和 <a href="ControlSetStyle.htm">设置控件扩展样式</a> 外) 之后, 会自动执行延迟. 该延迟可以通过 <a href="SetControlDelay.htm">设置控件延迟</a> 或给 <a href="../Variables.htm#ControlDelay">内_控件延迟</a> 赋值来更改. 有关详情, 请参阅 <a href="SetControlDelay.htm#Remarks">设置控件延迟 备注</a>.</p>
<p>要发现鼠标当前悬停的控件的 ClassNN 或 HWND, 请使用 <a href="MouseGetPos.htm">获取鼠标位置</a>.</p>
<p>要检索窗口中所有控件的列表, 请使用 <a href="WinGetControls.htm">获取窗口控件</a> 或 <a href="WinGetControlsHwnd.htm">获取窗口控件句柄</a>.</p>
<p>窗口标题和文本是区分大小写的. 除非 <a href="DetectHiddenWindows.htm">检测隐藏窗口</a> 被打开, 否则不会检测隐藏窗口.</p>

<h2 id="Related">相关</h2>
<p><a href="SetControlDelay.htm">设置控件延迟</a>, <a href="Win.htm">Win 函数</a>, <a href="../objects/GuiControl.htm">界面控件 对象</a>(用于由脚本创建的控件)</p>

</body>
</html>